////////////////////////////////////////////////////////////////////////////////////////////////////////
/// \file transform.h
/// \author Lukasz Madon
/// \author 7madon@novell.ftj.agh.edu.pl OR lukasgt@wp.pl
/// \version 1.0.1
/// \date 16-01-2010
/// \brief Deklaracja klasy Transform, interfejs . Plik naglowkowy.
////////////////////////////////////////////////////////////////////////////////////////////////////////

#ifndef TRANSFORM_H
#define TRANSFORM_H

#include <QBitmap>
#include <QGenericMatrix>

/////////////////////////////////////////////////////////////////////////
/// \class Transform
/// \brief Klasa definujaca szybka transformacje obrazka.
/////////////////////////////////////////////////////////////////////////
class Transform
{
public:
    /////////////////////////////////////////////////////////////////////////
    /// Kostruktor domyslny
    /////////////////////////////////////////////////////////////////////////
    Transform();

    /////////////////////////////////////////////////////////////////////////
    /// Virtualny destruktor
    /////////////////////////////////////////////////////////////////////////
    virtual ~Transform();

    /////////////////////////////////////////////////////////////////////////
    /// Metoda trans odpowiada za transformacje obrazka
    /// \param inImage wskaznik na obrazek ktory bedzie transformowany
    /// \param outImage wskaznik na obrazek ktory zostal przetransformowany
    /// \param matrix macierz transformacji
    /////////////////////////////////////////////////////////////////////////
    virtual void trans(QImage* inImage, QImage* outImage, QGenericMatrix<3,3,qreal> matrix);

};

#endif // TRANSFORM_H
